1. Field of the Invention
The present invention relates generally to providing product availability information to a user and more specifically to prepopulating a storage cache with product availability information, retrieving availability information from the cache and maintenance of the cache.
2. Description of Related Art
Several companies now provide discounted products to customers via web sites or via other electronic means. These companies contract with the product providers for discounted rates. The company then offers the products to its customers via a web site at a reduced price. The business relationships are beneficial to all, as they allow the product provider to experience increased sales without added marketing, and the customer receives the product at a reduced cost. A wide variety of products are sold in this manner.
For example, a wide range of commodity products, such as electronics, books, parts, etc., are sold on the Internet through discount web sites. These discount web sites contract with product providers to offer the products on their web sites at a discount. Typically, the web site will contain several listings for the same product from different product providers. When a customer selects a specific product, the discount web site sends a query to the source of the product to check availability and reports this to the customer. If the customer selects to purchase the product, the discount web site again checks availability and if the product is available, places an order for the product with the product source to be shipped to the customer.
There are also an increasing number of companies now offering other types of discounted products and services on the Internet, such as travel related services. These companies contract with hoteliers, airlines, car rental companies, etc to provide discount rates. These products are then offered to the customer in response to queries from the customer concerning specific travel needs at a lower price.
Unlike commodity type products, however, travel related products are typically much more complicated to administer in terms of availability determinations and pricing. Specifically, hoteliers and airlines place certain restrictions on their products that must be accounted for in determining availability. For example, hoteliers set requirements such as maximum and minimum lengths of stay and dates that are closed to check-in, where rooms are not available for check-in. Further, they may adjust room rates based on length of stay, check-in date, and the hotelier's predicted bookings. Advancements in automated revenue management techniques have allowed hoteliers to manipulate these requirements to respond to market conditions rapidly. For this reason, it is important that availability information is accurately determined, as well as product price.
FIG. 1 illustrates an example of a typical conventional network environment 10 in which a discount travel system is operated. The system typical includes a host computer 12 that operates a web site or other similar customer interface. The host computer is typically connected to a network 14, such as the Internet. Also connected to the network are various reservation systems 16 for different products sources, such as hoteliers, airlines, car rental companies, etc. Further, customers are also connected to the network via personal computers 18 or other types of computing systems.
In operation, the travel agency, via the host computer 12, provides a web page or other similar electronic form to the customer. Using the web page, the customer inputs a travel related query. Based on this query, the host computer, in turn, polls the reservation systems 16 of the product providers for availability information. The host computer assimilates the results of these queries and provides them in a web page or other electronic form to the customer.
An important issue with many of these conventional systems is processing delays associated with responding to customer queries. As noted above, because of the nature of many travel related products, it is important to provide up to date availability and pricing information. For this reason, conventional systems typically poll each product provider for availability information each time a customer request is submitted. Specifically, in response to an availability request concerning a given geographic area, date of arrival, and length of stay, many of these systems access the reservation system 16 of each product source, run the required availability queries, and provide the customer with a list of all available hotels meeting the criteria set forth in the query. For each hotel, there may be a price listing for different room classes, (e.g., double, king, room with a view, etc.), provided to the user, which requires the system to create a query for each hotel class. Some systems may provide the customer with upwards of 50 to a 100 different hotels meeting their query, with pricing information for each class of room offered by each hotel. As is apparent, the processing time required to poll the reservation system of each product provider and assemble this information may be excessive to the point that the time delay it is not acceptable to the customer. For example, if the system queries 50 hotels at an average of three queries apiece, and each query requires 10 to 15 seconds, the processing time may be in the range of 25 to 40 minutes for one customer request.
In light of these issues, systems, methods, and computer program products are needed that provide product availability information from various product sources to a customer in a more timely manner, while also ensuring that the availability and pricing information is accurate.